Skip to content

Conversation

@vishesh92
Copy link
Member

Description

This PR adds support for functionality in hypervisor class. This solves 2 issues:

  1. Allow configuring supported functionality of a hypervisor in Hypervisor class itself and remove custom logic of different hypervisors in the code. For now, we are only functionalities. Rest can be added later.
  2. This allows custom hypervisor plugins to define their supported functionalities as well.

Types of changes

  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Minor

Screenshots (if appropriate):

How Has This Been Tested?

How did you try to break this feature and the system with this change?

@vishesh92
Copy link
Member Author

@blueorangutan package

@blueorangutan
Copy link

@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@codecov
Copy link

codecov bot commented Sep 27, 2024

Codecov Report

Attention: Patch coverage is 45.71429% with 19 lines in your changes missing coverage. Please review.

Project coverage is 15.89%. Comparing base (bf2cede) to head (de41a6f).
Report is 81 commits behind head on 4.20.

Files with missing lines Patch % Lines
.../src/main/java/com/cloud/vm/UserVmManagerImpl.java 10.00% 9 Missing ⚠️
...src/main/java/com/cloud/hypervisor/Hypervisor.java 68.18% 7 Missing ⚠️
...api/command/user/template/RegisterTemplateCmd.java 0.00% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               4.20    #9736      +/-   ##
============================================
+ Coverage     15.78%   15.89%   +0.10%     
- Complexity    12550    12736     +186     
============================================
  Files          5625     5627       +2     
  Lines        491958   499324    +7366     
  Branches      60504    63253    +2749     
============================================
+ Hits          77663    79358    +1695     
- Misses       405836   411345    +5509     
- Partials       8459     8621     +162     
Flag Coverage Δ
uitests 4.03% <ø> (-0.01%) ⬇️
unittests 16.60% <45.71%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11213

@vishesh92 vishesh92 added this to the 4.20.1.0 milestone Sep 27, 2024
@vishesh92 vishesh92 force-pushed the hv-add-functionality-support branch from 65ee059 to d1982db Compare September 30, 2024 06:10
@apache apache deleted a comment from blueorangutan Sep 30, 2024
@vishesh92
Copy link
Member Author

@blueorangutan package

@blueorangutan
Copy link

@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11233

@vishesh92
Copy link
Member Author

@blueorangutan test matrix

@blueorangutan
Copy link

@vishesh92 a [SL] Trillian-Jenkins matrix job (EL8 mgmt + EL8 KVM, Ubuntu22 mgmt + Ubuntu22 KVM, EL8 mgmt + VMware 7.0u3, EL9 mgmt + XCP-ng 8.2 ) has been kicked to run smoke tests

@blueorangutan
Copy link

[SF] Trillian test result (tid-11576)
Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
Total time taken: 54729 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9736-t11576-kvm-ol8.zip
Smoke tests completed. 140 look OK, 1 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
ContextSuite context=TestISOUsage>:setup Error 0.00 test_usage.py

@blueorangutan
Copy link

[SF] Trillian test result (tid-11577)
Environment: kvm-ubuntu22 (x2), Advanced Networking with Mgmt server u22
Total time taken: 58863 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9736-t11577-kvm-ubuntu22.zip
Smoke tests completed. 139 look OK, 2 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
ContextSuite context=TestISOUsage>:setup Error 0.00 test_usage.py
test_hostha_enable_ha_when_host_disabled Error 3.96 test_hostha_kvm.py
test_hostha_enable_ha_when_host_in_maintenance Error 305.15 test_hostha_kvm.py

@vishesh92 vishesh92 requested a review from DaanHoogland October 1, 2024 07:18
@rohityadavcloud rohityadavcloud requested review from shwstppr and removed request for DaanHoogland October 1, 2024 07:18
Copy link
Contributor

@shwstppr shwstppr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code LGTM

@vishesh92 vishesh92 force-pushed the hv-add-functionality-support branch from 5c3593c to de41a6f Compare October 3, 2024 12:59
Copy link
Contributor

@sureshanaparti sureshanaparti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

clgtm

@sureshanaparti
Copy link
Contributor

@blueorangutan package

@blueorangutan
Copy link

@sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11267

@vishesh92
Copy link
Member Author

@blueorangutan test

@blueorangutan
Copy link

@vishesh92 a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

@blueorangutan
Copy link

[SF] Trillian test result (tid-11606)
Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
Total time taken: 73371 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9736-t11606-kvm-ol8.zip
Smoke tests completed. 137 look OK, 3 have errors, 1 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
test_02_list_cpvm_vm Failure 0.03 test_ssvm.py
test_04_cpvm_internals Failure 0.04 test_ssvm.py
test_01_secure_vm_migration Error 305.98 test_vm_life_cycle.py
test_02_unsecure_vm_migration Error 352.50 test_vm_life_cycle.py
test_03_secured_to_nonsecured_vm_migration Error 356.25 test_vm_life_cycle.py
test_hostha_configure_default_driver Error 365.95 test_hostha_kvm.py
test_hostha_enable_ha_when_host_in_maintenance Failure 855.46 test_hostha_kvm.py
test_hostha_kvm_host_degraded Error 1982.62 test_hostha_kvm.py
test_hostha_kvm_host_degraded Error 1982.62 test_hostha_kvm.py
test_hostha_kvm_host_recovering Error 193.74 test_hostha_kvm.py
test_remove_ha_provider_not_possible Error 277.00 test_hostha_kvm.py
all_test_host_maintenance Skipped --- test_host_maintenance.py

@vishesh92
Copy link
Member Author

@blueorangutan package

@blueorangutan
Copy link

@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11303

@rohityadavcloud rohityadavcloud marked this pull request as ready for review October 9, 2024 07:02
@rohityadavcloud
Copy link
Member

@blueorangutan test

@blueorangutan
Copy link

@rohityadavcloud a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

@blueorangutan
Copy link

[SF] Trillian test result (tid-11642)
Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
Total time taken: 76268 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9736-t11642-kvm-ol8.zip
Smoke tests completed. 133 look OK, 2 have errors, 6 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
test_01_secure_vm_migration Error 134.17 test_vm_life_cycle.py
test_01_secure_vm_migration Error 134.17 test_vm_life_cycle.py
test_04_rvpc_network_garbage_collector_nics Error 2466.66 test_vpc_redundant.py
test_04_rvpc_network_garbage_collector_nics Error 2466.67 test_vpc_redundant.py
test_05_rvpc_multi_tiers Error 55.13 test_vpc_redundant.py
ContextSuite context=TestVPCRedundancy>:teardown Error 116.66 test_vpc_redundant.py
all_test_vpc_router_nics Skipped --- test_vpc_router_nics.py
all_test_vpc_vpn Skipped --- test_vpc_vpn.py
all_test_webhook_delivery Skipped --- test_webhook_delivery.py
all_test_webhook_lifecycle Skipped --- test_webhook_lifecycle.py
all_test_host_maintenance Skipped --- test_host_maintenance.py
all_test_hostha_kvm Skipped --- test_hostha_kvm.py

@rohityadavcloud
Copy link
Member

@blueorangutan package

@blueorangutan
Copy link

@rohityadavcloud a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 11648

@weizhouapache
Copy link
Member

@blueorangutan package

@blueorangutan
Copy link

@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11654

@rohityadavcloud
Copy link
Member

@blueorangutan test

@blueorangutan
Copy link

@rohityadavcloud a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

@blueorangutan
Copy link

[SF] Trillian test result (tid-11829)
Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
Total time taken: 54109 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9736-t11829-kvm-ol8.zip
Smoke tests completed. 140 look OK, 1 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
test_04_nonsecured_to_secured_vm_migration Error 352.20 test_vm_life_cycle.py

@rohityadavcloud rohityadavcloud merged commit 52e7b41 into apache:4.20 Dec 3, 2024
25 checks passed
@rohityadavcloud rohityadavcloud deleted the hv-add-functionality-support branch December 3, 2024 06:51
dhslove pushed a commit to ablecloud-team/ablestack-cloud that referenced this pull request Dec 12, 2024
* Add support for functionality in hypervisor class

* Address comments

* address comments
@Pearl1594 Pearl1594 moved this to Done in ACS 4.20.1 Mar 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

6 participants